﻿using System;
using System.Data;
using System.Data.Linq;
using System.Data.Linq.Mapping;
using System.Collections;
using System.Collections.Generic;
using System.Reflection;

namespace PickGold.Data.Linq
{
	public class MappingMember : MetaDataMember
	{
		private MetaSource _Source;
		private MappingModel _Model;
		private MappingType _Type;
		private MemberInfo _Member;

		public MappingMember(MetaSource source, MappingModel model, MappingType type, MemberInfo member)
		{
			this._Source = source;
			this._Model = model;
			this._Type = type;
			this._Member = member;
		}

		public override MetaAssociation Association
		{
			get { throw new NotImplementedException(); }
		}

		public override AutoSync AutoSync
		{
			get { throw new NotImplementedException(); }
		}

		public override bool CanBeNull
		{
			get { throw new NotImplementedException(); }
		}

		public override string DbType
		{
			get { throw new NotImplementedException(); }
		}

		public override MetaType DeclaringType
		{
			get { throw new NotImplementedException(); }
		}

		public override MetaAccessor DeferredSourceAccessor
		{
			get { throw new NotImplementedException(); }
		}

		public override MetaAccessor DeferredValueAccessor
		{
			get { throw new NotImplementedException(); }
		}

		public override string Expression
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsAssociation
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsDbGenerated
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsDeclaredBy(MetaType type)
		{
			throw new NotImplementedException();
		}

		public override bool IsDeferred
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsDiscriminator
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsPersistent
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsPrimaryKey
		{
			get { throw new NotImplementedException(); }
		}

		public override bool IsVersion
		{
			get { throw new NotImplementedException(); }
		}

		public override System.Reflection.MethodInfo LoadMethod
		{
			get { throw new NotImplementedException(); }
		}

		public override string MappedName
		{
			get { throw new NotImplementedException(); }
		}

		public override MemberInfo Member
		{
			get
			{
				return this._Member;
			}
		}

		public override MetaAccessor MemberAccessor
		{
			get { throw new NotImplementedException(); }
		}

		public override string Name
		{
			get { throw new NotImplementedException(); }
		}

		public override int Ordinal
		{
			get { throw new NotImplementedException(); }
		}

		public override MetaAccessor StorageAccessor
		{
			get { throw new NotImplementedException(); }
		}

		public override MemberInfo StorageMember
		{
			get { throw new NotImplementedException(); }
		}

		public override Type Type
		{
			get { throw new NotImplementedException(); }
		}

		public override UpdateCheck UpdateCheck
		{
			get { throw new NotImplementedException(); }
		}
	}
}
